package org.example;

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class ExcelExporter {

    public static void main(String[] args) {
        String templatePath = "C:\\Users\\lvenx\\Desktop\\shixi\\untitled\\src\\main\\java\\org\\example\\期间核查导入导出模板.xlsx"; // 模板文件路径
        String exportPath = "exported_file.xlsx"; // 导出文件路径

        try (FileInputStream fis = new FileInputStream(new File(templatePath));
             XSSFWorkbook workbook = new XSSFWorkbook(fis)) {

            // 加载模板中的第一个 Sheet
            XSSFSheet sheet = workbook.getSheetAt(0);

            // 修改模板中的数据（假设修改第6行，第2列到第16列的数据）
            for (int i = 5; i < 10; i++) { // 从第6行开始
                Row row = sheet.getRow(i);
                if (row == null) {
                    row = sheet.createRow(i); // 如果行不存在则创建新行
                }
                for (int j = 1; j <= 15; j++) { // 第2列到第16列
                    Cell cell = row.getCell(j);
                    if (cell == null) {
                        cell = row.createCell(j); // 如果单元格不存在则创建
                    }
                    cell.setCellValue("数据" + (i + 1) + "-" + (j + 1)); // 设置数据
                }
            }

            // 保存修改后的 Excel 文件
            try (FileOutputStream fos = new FileOutputStream(new File(exportPath))) {
                workbook.write(fos);
                System.out.println("导出成功：" + exportPath);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
